package tchk.xyz.lingyuntutorminiprogram.service;

import com.baomidou.mybatisplus.extension.service.IService;
import tchk.xyz.lingyuntutorminiprogram.dto.RoleDTO;
import tchk.xyz.lingyuntutorminiprogram.entity.SysRole;

import java.util.List;

public interface ISysRoleService extends IService<SysRole> {
    /**
     * 获取角色及其拥有的权限ID列表
     *
     * @param id 角色ID
     * @return RoleDTO
     */
    RoleDTO getRoleWithPermissions(Long id);

    /**
     * 保存角色及其权限
     *
     * @param roleDTO 角色数据
     */
    void saveRoleWithPermissions(RoleDTO roleDTO);

    /**
     * 更新角色及其权限
     *
     * @param roleDTO 角色数据
     */
    void updateRoleWithPermissions(RoleDTO roleDTO);

    /**
     * 获取所有角色的简要列表（用于下拉选择）
     */
    List<SysRole> listAll();
}